import type { RouteRecordRaw } from 'vue-router';

const routes: RouteRecordRaw[] = [
  {
    path: '/charge',
    name: 'charge',
    redirect: '/charge/freight_basis ',
    meta: {
      title: '收费管理',
      icon: 'lucide:japanese-yen',
      order: 2200,
      hideInMenu: false,
      keepAlive: true,
    },
    children: [
      {
        path: '/charge/freight_basis',
        name: 'freight_basis',
        meta: {
          title: '计费标准',
          hideInMenu: false,
          keepAlive: true,
        },
        component: () => import('#/views/charge/freight_basis.vue'),
      },
      {
        path: '/charge/receivable_query',
        name: 'receivable_query',
        meta: {
          title: '应收查询',
          hideInMenu: false,
          keepAlive: true,
        },
        component: () => import('#/views/charge/receivable_query.vue'),
      },
      {
        path: '/charge/personal_receivable',
        name: 'personal_receivable',
        meta: {
          title: '个人缴费/单位缴费',
          hideInMenu: false,
          keepAlive: true,
        },
        component: () => import('#/views/charge/personal_receivable.vue'),
      },
      {
        path: '/charge/generate_expenses',
        name: 'generate_expenses',
        meta: {
          title: '生成费用',
          hideInMenu: false,
          keepAlive: true,
        },
        component: () => import('#/views/charge/generate_expenses.vue'),
      },
      {
        path: '/charge/heating_season',
        name: 'heating_season',
        meta: {
          title: '采暖季应收计划',
          hideInMenu: false,
          keepAlive: true,
        },
        component: () => import('#/views/charge/heating_season.vue'),
      },
      {
        path: '/charge/audit',
        name: 'audit',
        meta: {
          title: '审批管理',
          order: 2200,
          hideInMenu: false,
          keepAlive: true,
        },
        children: [
          {
            path: '/charge/audit/client_audit_list',
            name: 'client_audit_list',
            meta: {
              title: '客户删除审批',
              order: 2200,
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/audit/client_audit_list.vue'),
          },
          {
            path: '/charge/audit/client_audit_update',
            name: 'client_audit_update',
            meta: {
              title: '客户修改审批',
              order: 2200,
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/audit/client_audit_update.vue'),
          },
          {
            path: '/charge/audit/client_audit_inbound',
            name: 'client_audit_inbound',
            meta: {
              title: '客户导入审批',
              order: 2200,
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/audit/client_audit_inbound.vue'),
          },
          {
            path: '/charge/audit/ReceivablePlanApproval',
            name: 'ReceivablePlanApproval',
            meta: {
              title: '应收计划审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/audit/ReceivablePlanApproval.vue'),
          },
          {
            path: '/charge/audit/ReceivablePlanPmportPpproval',
            name: 'ReceivablePlanPmportPpproval',
            meta: {
              title: '应收计划导入审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/audit/ReceivablePlanPmportPpproval.vue'),
          },
          {
            path: '/charge/audit/ReceivablePlanUpdateApproval',
            name: 'ReceivablePlanUpdateApproval',
            meta: {
              title: '应收删除审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/audit/ReceivablePlanUpdateApproval.vue'),
          },
          {
            path: '/charge/audit/AccountAdjustmentApproval',
            name: 'AccountAdjustmentApproval',
            meta: {
              title: '冲账审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/audit/AccountAdjustmentApproval.vue'),
          },
          {
            path: '/charge/audit/JFBZ_Approval',
            name: 'JFBZ_Approval',
            meta: {
              title: '收费标准审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () => import('#/views/charge/audit/JFBZ_Approval.vue'),
          },
          {
            path: '/charge/audit/StopSupplyApproval',
            name: 'StopSupplyApproval',
            meta: {
              title: '停供审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/audit/StopSupplyApproval.vue'),
          },
          {
            path: '/charge/audit/InvoiceApproval',
            name: 'InvoiceApproval',
            meta: {
              title: '开票审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () => import('#/views/charge/audit/InvoiceApproval.vue'),
          },
          {
            path: '/charge/audit/InvoiceUpdateApproval',
            name: 'InvoiceUpdateApproval',
            meta: {
              title: '收费导入审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/audit/InvoiceUpdateApproval.vue'),
          },
          {
            path: '/charge/audit/InvoiceDeleteApproval',
            name: 'InvoiceDeleteApproval',
            meta: {
              title: '导入删除审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/audit/InvoiceDeleteApproval.vue'),
          },
          {
            path: '/charge/audit/InvoiceRefundApproval',
            name: 'InvoiceRefundApproval',
            meta: {
              title: '费用减免审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/audit/InvoiceRefundApproval.vue'),
          },
          {
            path: '/charge/audit/InvoiceRedRushApproval',
            name: 'InvoiceRedRushApproval',
            meta: {
              title: '退款审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/audit/InvoiceRedRushApproval.vue'),
          },
          {
            path: '/charge/audit/SmsApproval',
            name: 'SmsApproval',
            meta: {
              title: '短信审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () => import('#/views/charge/audit/sms_approval.vue'),
          },
          {
            path: '/charge/audit/NoticeAudit',
            name: 'NoticeAudit',
            meta: {
              title: '通知审批',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () => import('#/views/charge/audit/NoticeAudit.vue'),
          },
        ],
      },
      {
        path: '/charge/red_rush',
        name: 'red_rush',
        meta: {
          title: '红冲管理',
          hideInMenu: false,
          keepAlive: true,
        },
        component: () => import('#/views/charge/red_rush.vue'),
      },
      {
        path: '/charge/refund',
        name: 'refund',
        meta: {
          title: '退费管理',
          hideInMenu: false,
          keepAlive: true,
        },
        component: () => import('#/views/charge/refund.vue'),
      },
      {
        path: '/charge/received',
        name: 'received',
        meta: {
          title: '已收管理',
          hideInMenu: false,
          keepAlive: true,
        },
        component: () => import('#/views/charge/received.vue'),
      },
      {
        path: '/charge/invoice',
        name: 'invoice',
        meta: {
          title: '发票管理',
          hideInMenu: false,
          keepAlive: true,
        },
        component: () => import('#/views/charge/invoice.vue'),
      },
      {
        path: '/charge/fee_reduction',
        name: 'fee_reduction',
        meta: {
          title: '费用减免',
          hideInMenu: false,
          keepAlive: true,
        },
        component: () => import('#/views/charge/fee_reduction.vue'),
      },
      {
        path: '/charge/fee_import',
        name: 'fee_import',
        meta: {
          title: '包干小区收费导入',
          hideInMenu: false,
          keepAlive: true,
        },
        component: () => import('#/views/charge/fee_import.vue'),
      },
      {
        path: '/charge/import_fee',
        name: 'import_fee',
        meta: {
          title: '收费导入',
          hideInMenu: false,
          keepAlive: true,
        },
        component: () => import('#/views/charge/import_fee.vue'),
      },
      {
        path: '/charge/advance_receipt',
        name: 'advance_receipt',
        meta: {
          title: '预收款管理',
          order: 2300,
          hideInMenu: false,
          keepAlive: true,
        },
        children: [
          {
            path: '/charge/advance_receipt/account_management',
            name: 'account_management',
            meta: {
              title: '账户管理',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/advanceReceipt/account_management.vue'),
          },
          {
            path: '/charge/advance_receipt/recharge_management',
            name: 'recharge_management',
            meta: {
              title: '充值管理',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/advanceReceipt/recharge_management.vue'),
          },
          {
            path: '/charge/advance_receipt/refund_management',
            name: 'refund_management',
            meta: {
              title: '退款管理',
              order: 2200,
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/advanceReceipt/refund_management.vue'),
          },
          {
            path: '/charge/advance_receipt/refund_record',
            name: 'refund_record',
            meta: {
              title: '退款记录',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () =>
              import('#/views/charge/advanceReceipt/refund_record.vue'),
          },
        ],
      },
      {
        path: '/charge/fee_collection_management',
        name: 'fee_collection_management',
        meta: {
          title: '催费管理',
          order: 2400,
          hideInMenu: false,
          keepAlive: true,
        },
        children: [
          {
            path: '/charge/fee_collection_management/push',
            name: 'push',
            meta: {
              title: '催费推送',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () => import('#/views/charge/feeCollection/push.vue'),
          },
          {
            path: '/charge/fee_collection_management/history',
            name: 'history',
            meta: {
              title: '催费历史',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () => import('#/views/charge/feeCollection/history.vue'),
          },
          {
            path: '/charge/fee_collection_management/notice',
            name: 'notice',
            meta: {
              title: '催费通知单',
              hideInMenu: false,
              keepAlive: true,
            },
            component: () => import('#/views/charge/feeCollection/notice.vue'),
          },
        ],
      },
    ],
  },
];
export default routes;
